package com.tsing.cedap.rest.vo.respVo;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author TheTsing
 * @create 2022-01-28 16:34
 */
@Getter
@Setter
@Accessors(chain = true)
public class OrderRespVo {

    private String id;

    @ApiModelProperty("驿站名称")
    private String courierStationName;

    @ApiModelProperty("快递品牌名称")
    private String expressBrandName;

    @ApiModelProperty("取件码")
    private String expressCode;

    @ApiModelProperty("货物类型")
    private String wareType;

    @ApiModelProperty("重量 kg")
    private BigDecimal weight;

    @ApiModelProperty("去驿站取件：收件人")
    private String name;

    @ApiModelProperty("去驿站取件：收件人电话")
    private String phone;

    @ApiModelProperty("备注")
    private String description;

    @ApiModelProperty("校区名称")
    private String campusName;

    @ApiModelProperty("具体地址")
    private String receivingAddressName;

    @ApiModelProperty("客户姓名")
    private String customerName;

    @ApiModelProperty("客户电话")
    private String customerPhone;

    @ApiModelProperty("期望时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date expectedTime;

//    @JSONField(serialize = false)
    private String riderId;

    @ApiModelProperty("骑手姓名")
    private String riderName;

    @ApiModelProperty("骑手电话")
    private String riderPhone;

    @ApiModelProperty("打赏小费")
    private BigDecimal tip;

    @ApiModelProperty("支付方式  1 线上  2 线下")
    private Integer paymentMethod;

    @ApiModelProperty("下单时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date orderTime;

    @ApiModelProperty("接单时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date receiveTime;

    @ApiModelProperty("验收时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date sendTime;

    @ApiModelProperty("支付、完成时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date completeTime;

    @ApiModelProperty("取消时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date cancelTime;

    @ApiModelProperty("状态：0 已取消  1 派单中  2 已接单 取件派送中  3 已到达并验核 待支付  4 已完成")
    private Integer status;

    @ApiModelProperty("变更原因")
    private String changeReason;

}
